
test：     文件格式 elf64-x86-64


Disassembly of section .init:

0000000000400830 <_init>:
  400830:	f3 0f 1e fa          	endbr64 
  400834:	48 83 ec 08          	sub    $0x8,%rsp
  400838:	48 8b 05 b1 07 20 00 	mov    0x2007b1(%rip),%rax        # 600ff0 <__gmon_start__>
  40083f:	48 85 c0             	test   %rax,%rax
  400842:	74 02                	je     400846 <_init+0x16>
  400844:	ff d0                	callq  *%rax
  400846:	48 83 c4 08          	add    $0x8,%rsp
  40084a:	c3                   	retq   

Disassembly of section .plt:

0000000000400850 <.plt>:
  400850:	ff 35 b2 07 20 00    	pushq  0x2007b2(%rip)        # 601008 <_GLOBAL_OFFSET_TABLE_+0x8>
  400856:	ff 25 b4 07 20 00    	jmpq   *0x2007b4(%rip)        # 601010 <_GLOBAL_OFFSET_TABLE_+0x10>
  40085c:	0f 1f 40 00          	nopl   0x0(%rax)

0000000000400860 <free@plt>:
  400860:	ff 25 b2 07 20 00    	jmpq   *0x2007b2(%rip)        # 601018 <free@GLIBC_2.2.5>
  400866:	68 00 00 00 00       	pushq  $0x0
  40086b:	e9 e0 ff ff ff       	jmpq   400850 <.plt>

0000000000400870 <backtrace_symbols@plt>:
  400870:	ff 25 aa 07 20 00    	jmpq   *0x2007aa(%rip)        # 601020 <backtrace_symbols@GLIBC_2.2.5>
  400876:	68 01 00 00 00       	pushq  $0x1
  40087b:	e9 d0 ff ff ff       	jmpq   400850 <.plt>

0000000000400880 <backtrace@plt>:
  400880:	ff 25 a2 07 20 00    	jmpq   *0x2007a2(%rip)        # 601028 <backtrace@GLIBC_2.2.5>
  400886:	68 02 00 00 00       	pushq  $0x2
  40088b:	e9 c0 ff ff ff       	jmpq   400850 <.plt>

0000000000400890 <signal@plt>:
  400890:	ff 25 9a 07 20 00    	jmpq   *0x20079a(%rip)        # 601030 <signal@GLIBC_2.2.5>
  400896:	68 03 00 00 00       	pushq  $0x3
  40089b:	e9 b0 ff ff ff       	jmpq   400850 <.plt>

00000000004008a0 <fprintf@plt>:
  4008a0:	ff 25 92 07 20 00    	jmpq   *0x200792(%rip)        # 601038 <fprintf@GLIBC_2.2.5>
  4008a6:	68 04 00 00 00       	pushq  $0x4
  4008ab:	e9 a0 ff ff ff       	jmpq   400850 <.plt>

00000000004008b0 <perror@plt>:
  4008b0:	ff 25 8a 07 20 00    	jmpq   *0x20078a(%rip)        # 601040 <perror@GLIBC_2.2.5>
  4008b6:	68 05 00 00 00       	pushq  $0x5
  4008bb:	e9 90 ff ff ff       	jmpq   400850 <.plt>

00000000004008c0 <exit@plt>:
  4008c0:	ff 25 82 07 20 00    	jmpq   *0x200782(%rip)        # 601048 <exit@GLIBC_2.2.5>
  4008c6:	68 06 00 00 00       	pushq  $0x6
  4008cb:	e9 80 ff ff ff       	jmpq   400850 <.plt>

Disassembly of section .text:

00000000004008d0 <_start>:
  4008d0:	f3 0f 1e fa          	endbr64 
  4008d4:	31 ed                	xor    %ebp,%ebp
  4008d6:	49 89 d1             	mov    %rdx,%r9
  4008d9:	5e                   	pop    %rsi
  4008da:	48 89 e2             	mov    %rsp,%rdx
  4008dd:	48 83 e4 f0          	and    $0xfffffffffffffff0,%rsp
  4008e1:	50                   	push   %rax
  4008e2:	54                   	push   %rsp
  4008e3:	49 c7 c0 a0 0b 40 00 	mov    $0x400ba0,%r8
  4008ea:	48 c7 c1 30 0b 40 00 	mov    $0x400b30,%rcx
  4008f1:	48 c7 c7 e8 0a 40 00 	mov    $0x400ae8,%rdi
  4008f8:	ff 15 ea 06 20 00    	callq  *0x2006ea(%rip)        # 600fe8 <__libc_start_main@GLIBC_2.2.5>
  4008fe:	f4                   	hlt    

00000000004008ff <.annobin_init.c>:
  4008ff:	90                   	nop

0000000000400900 <_dl_relocate_static_pie>:
  400900:	f3 0f 1e fa          	endbr64 
  400904:	c3                   	retq   

0000000000400905 <.annobin__dl_relocate_static_pie.end>:
  400905:	66 2e 0f 1f 84 00 00 	nopw   %cs:0x0(%rax,%rax,1)
  40090c:	00 00 00 
  40090f:	90                   	nop

0000000000400910 <deregister_tm_clones>:
  400910:	48 8d 3d 41 07 20 00 	lea    0x200741(%rip),%rdi        # 601058 <stdout@@GLIBC_2.2.5>
  400917:	48 8d 05 3a 07 20 00 	lea    0x20073a(%rip),%rax        # 601058 <stdout@@GLIBC_2.2.5>
  40091e:	48 39 f8             	cmp    %rdi,%rax
  400921:	74 15                	je     400938 <deregister_tm_clones+0x28>
  400923:	48 8b 05 b6 06 20 00 	mov    0x2006b6(%rip),%rax        # 600fe0 <_ITM_deregisterTMCloneTable>
  40092a:	48 85 c0             	test   %rax,%rax
  40092d:	74 09                	je     400938 <deregister_tm_clones+0x28>
  40092f:	ff e0                	jmpq   *%rax
  400931:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
  400938:	c3                   	retq   
  400939:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)

0000000000400940 <register_tm_clones>:
  400940:	48 8d 3d 11 07 20 00 	lea    0x200711(%rip),%rdi        # 601058 <stdout@@GLIBC_2.2.5>
  400947:	48 8d 35 0a 07 20 00 	lea    0x20070a(%rip),%rsi        # 601058 <stdout@@GLIBC_2.2.5>
  40094e:	48 29 fe             	sub    %rdi,%rsi
  400951:	48 c1 fe 03          	sar    $0x3,%rsi
  400955:	48 89 f0             	mov    %rsi,%rax
  400958:	48 c1 e8 3f          	shr    $0x3f,%rax
  40095c:	48 01 c6             	add    %rax,%rsi
  40095f:	48 d1 fe             	sar    %rsi
  400962:	74 14                	je     400978 <register_tm_clones+0x38>
  400964:	48 8b 05 8d 06 20 00 	mov    0x20068d(%rip),%rax        # 600ff8 <_ITM_registerTMCloneTable>
  40096b:	48 85 c0             	test   %rax,%rax
  40096e:	74 08                	je     400978 <register_tm_clones+0x38>
  400970:	ff e0                	jmpq   *%rax
  400972:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
  400978:	c3                   	retq   
  400979:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)

0000000000400980 <__do_global_dtors_aux>:
  400980:	f3 0f 1e fa          	endbr64 
  400984:	80 3d d5 06 20 00 00 	cmpb   $0x0,0x2006d5(%rip)        # 601060 <completed.7294>
  40098b:	75 13                	jne    4009a0 <__do_global_dtors_aux+0x20>
  40098d:	55                   	push   %rbp
  40098e:	48 89 e5             	mov    %rsp,%rbp
  400991:	e8 7a ff ff ff       	callq  400910 <deregister_tm_clones>
  400996:	c6 05 c3 06 20 00 01 	movb   $0x1,0x2006c3(%rip)        # 601060 <completed.7294>
  40099d:	5d                   	pop    %rbp
  40099e:	c3                   	retq   
  40099f:	90                   	nop
  4009a0:	c3                   	retq   
  4009a1:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
  4009a6:	66 2e 0f 1f 84 00 00 	nopw   %cs:0x0(%rax,%rax,1)
  4009ad:	00 00 00 

00000000004009b0 <frame_dummy>:
  4009b0:	f3 0f 1e fa          	endbr64 
  4009b4:	eb 8a                	jmp    400940 <register_tm_clones>

00000000004009b6 <_Z4dumpi>:
  4009b6:	55                   	push   %rbp
  4009b7:	48 89 e5             	mov    %rsp,%rbp
  4009ba:	48 81 ec 20 01 00 00 	sub    $0x120,%rsp
  4009c1:	89 bd ec fe ff ff    	mov    %edi,-0x114(%rbp)
  4009c7:	48 8d 95 f0 fe ff ff 	lea    -0x110(%rbp),%rdx
  4009ce:	b8 00 00 00 00       	mov    $0x0,%eax
  4009d3:	b9 1e 00 00 00       	mov    $0x1e,%ecx
  4009d8:	48 89 d7             	mov    %rdx,%rdi
  4009db:	f3 48 ab             	rep stos %rax,%es:(%rdi)
  4009de:	48 c7 45 f0 00 00 00 	movq   $0x0,-0x10(%rbp)
  4009e5:	00 
  4009e6:	48 c7 45 f8 00 00 00 	movq   $0x0,-0x8(%rbp)
  4009ed:	00 
  4009ee:	48 8d 85 f0 fe ff ff 	lea    -0x110(%rbp),%rax
  4009f5:	be 1e 00 00 00       	mov    $0x1e,%esi
  4009fa:	48 89 c7             	mov    %rax,%rdi
  4009fd:	e8 7e fe ff ff       	callq  400880 <backtrace@plt>
  400a02:	48 98                	cltq   
  400a04:	48 89 45 e8          	mov    %rax,-0x18(%rbp)
  400a08:	48 8b 05 49 06 20 00 	mov    0x200649(%rip),%rax        # 601058 <stdout@@GLIBC_2.2.5>
  400a0f:	48 8b 55 e8          	mov    -0x18(%rbp),%rdx
  400a13:	be c8 0b 40 00       	mov    $0x400bc8,%esi
  400a18:	48 89 c7             	mov    %rax,%rdi
  400a1b:	b8 00 00 00 00       	mov    $0x0,%eax
  400a20:	e8 7b fe ff ff       	callq  4008a0 <fprintf@plt>
  400a25:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
  400a29:	89 c2                	mov    %eax,%edx
  400a2b:	48 8d 85 f0 fe ff ff 	lea    -0x110(%rbp),%rax
  400a32:	89 d6                	mov    %edx,%esi
  400a34:	48 89 c7             	mov    %rax,%rdi
  400a37:	e8 34 fe ff ff       	callq  400870 <backtrace_symbols@plt>
  400a3c:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
  400a40:	48 83 7d f0 00       	cmpq   $0x0,-0x10(%rbp)
  400a45:	75 14                	jne    400a5b <_Z4dumpi+0xa5>
  400a47:	bf e6 0b 40 00       	mov    $0x400be6,%edi
  400a4c:	e8 5f fe ff ff       	callq  4008b0 <perror@plt>
  400a51:	bf 01 00 00 00       	mov    $0x1,%edi
  400a56:	e8 65 fe ff ff       	callq  4008c0 <exit@plt>
  400a5b:	48 c7 45 f8 00 00 00 	movq   $0x0,-0x8(%rbp)
  400a62:	00 
  400a63:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
  400a67:	48 3b 45 e8          	cmp    -0x18(%rbp),%rax
  400a6b:	73 36                	jae    400aa3 <_Z4dumpi+0xed>
  400a6d:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
  400a71:	48 8d 14 c5 00 00 00 	lea    0x0(,%rax,8),%rdx
  400a78:	00 
  400a79:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
  400a7d:	48 01 d0             	add    %rdx,%rax
  400a80:	48 8b 10             	mov    (%rax),%rdx
  400a83:	48 8b 05 ce 05 20 00 	mov    0x2005ce(%rip),%rax        # 601058 <stdout@@GLIBC_2.2.5>
  400a8a:	be f9 0b 40 00       	mov    $0x400bf9,%esi
  400a8f:	48 89 c7             	mov    %rax,%rdi
  400a92:	b8 00 00 00 00       	mov    $0x0,%eax
  400a97:	e8 04 fe ff ff       	callq  4008a0 <fprintf@plt>
  400a9c:	48 83 45 f8 01       	addq   $0x1,-0x8(%rbp)
  400aa1:	eb c0                	jmp    400a63 <_Z4dumpi+0xad>
  400aa3:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
  400aa7:	48 89 c7             	mov    %rax,%rdi
  400aaa:	e8 b1 fd ff ff       	callq  400860 <free@plt>
  400aaf:	48 c7 45 f0 00 00 00 	movq   $0x0,-0x10(%rbp)
  400ab6:	00 
  400ab7:	bf 00 00 00 00       	mov    $0x0,%edi
  400abc:	e8 ff fd ff ff       	callq  4008c0 <exit@plt>

0000000000400ac1 <_Z6func_cv>:
  400ac1:	55                   	push   %rbp
  400ac2:	48 89 e5             	mov    %rsp,%rbp
  400ac5:	b8 00 00 00 00       	mov    $0x0,%eax
  400aca:	c6 00 99             	movb   $0x99,(%rax)
  400acd:	90                   	nop
  400ace:	5d                   	pop    %rbp
  400acf:	c3                   	retq   

0000000000400ad0 <_Z6func_bv>:
  400ad0:	55                   	push   %rbp
  400ad1:	48 89 e5             	mov    %rsp,%rbp
  400ad4:	e8 e8 ff ff ff       	callq  400ac1 <_Z6func_cv>
  400ad9:	90                   	nop
  400ada:	5d                   	pop    %rbp
  400adb:	c3                   	retq   

0000000000400adc <_Z6func_av>:
  400adc:	55                   	push   %rbp
  400add:	48 89 e5             	mov    %rsp,%rbp
  400ae0:	e8 eb ff ff ff       	callq  400ad0 <_Z6func_bv>
  400ae5:	90                   	nop
  400ae6:	5d                   	pop    %rbp
  400ae7:	c3                   	retq   

0000000000400ae8 <main>:
  400ae8:	55                   	push   %rbp
  400ae9:	48 89 e5             	mov    %rsp,%rbp
  400aec:	48 83 ec 10          	sub    $0x10,%rsp
  400af0:	89 7d fc             	mov    %edi,-0x4(%rbp)
  400af3:	48 89 75 f0          	mov    %rsi,-0x10(%rbp)
  400af7:	be b6 09 40 00       	mov    $0x4009b6,%esi
  400afc:	bf 0b 00 00 00       	mov    $0xb,%edi
  400b01:	e8 8a fd ff ff       	callq  400890 <signal@plt>
  400b06:	48 83 f8 ff          	cmp    $0xffffffffffffffff,%rax
  400b0a:	0f 94 c0             	sete   %al
  400b0d:	84 c0                	test   %al,%al
  400b0f:	74 0a                	je     400b1b <main+0x33>
  400b11:	bf fd 0b 40 00       	mov    $0x400bfd,%edi
  400b16:	e8 95 fd ff ff       	callq  4008b0 <perror@plt>
  400b1b:	e8 bc ff ff ff       	callq  400adc <_Z6func_av>
  400b20:	b8 00 00 00 00       	mov    $0x0,%eax
  400b25:	c9                   	leaveq 
  400b26:	c3                   	retq   
  400b27:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
  400b2e:	00 00 

0000000000400b30 <__libc_csu_init>:
  400b30:	f3 0f 1e fa          	endbr64 
  400b34:	41 57                	push   %r15
  400b36:	49 89 d7             	mov    %rdx,%r15
  400b39:	41 56                	push   %r14
  400b3b:	49 89 f6             	mov    %rsi,%r14
  400b3e:	41 55                	push   %r13
  400b40:	41 89 fd             	mov    %edi,%r13d
  400b43:	41 54                	push   %r12
  400b45:	4c 8d 25 b4 02 20 00 	lea    0x2002b4(%rip),%r12        # 600e00 <__frame_dummy_init_array_entry>
  400b4c:	55                   	push   %rbp
  400b4d:	48 8d 2d b4 02 20 00 	lea    0x2002b4(%rip),%rbp        # 600e08 <__init_array_end>
  400b54:	53                   	push   %rbx
  400b55:	4c 29 e5             	sub    %r12,%rbp
  400b58:	48 83 ec 08          	sub    $0x8,%rsp
  400b5c:	e8 cf fc ff ff       	callq  400830 <_init>
  400b61:	48 c1 fd 03          	sar    $0x3,%rbp
  400b65:	74 1f                	je     400b86 <__libc_csu_init+0x56>
  400b67:	31 db                	xor    %ebx,%ebx
  400b69:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
  400b70:	4c 89 fa             	mov    %r15,%rdx
  400b73:	4c 89 f6             	mov    %r14,%rsi
  400b76:	44 89 ef             	mov    %r13d,%edi
  400b79:	41 ff 14 dc          	callq  *(%r12,%rbx,8)
  400b7d:	48 83 c3 01          	add    $0x1,%rbx
  400b81:	48 39 dd             	cmp    %rbx,%rbp
  400b84:	75 ea                	jne    400b70 <__libc_csu_init+0x40>
  400b86:	48 83 c4 08          	add    $0x8,%rsp
  400b8a:	5b                   	pop    %rbx
  400b8b:	5d                   	pop    %rbp
  400b8c:	41 5c                	pop    %r12
  400b8e:	41 5d                	pop    %r13
  400b90:	41 5e                	pop    %r14
  400b92:	41 5f                	pop    %r15
  400b94:	c3                   	retq   

0000000000400b95 <.annobin___libc_csu_fini.start>:
  400b95:	66 66 2e 0f 1f 84 00 	data16 nopw %cs:0x0(%rax,%rax,1)
  400b9c:	00 00 00 00 

0000000000400ba0 <__libc_csu_fini>:
  400ba0:	f3 0f 1e fa          	endbr64 
  400ba4:	c3                   	retq   

Disassembly of section .fini:

0000000000400ba8 <_fini>:
  400ba8:	f3 0f 1e fa          	endbr64 
  400bac:	48 83 ec 08          	sub    $0x8,%rsp
  400bb0:	48 83 c4 08          	add    $0x8,%rsp
  400bb4:	c3                   	retq   
